Correlation Matrix
df.rcorr <- df %>%
select(-iso, -country_name) %>%
as.matrix() %>%
rcorr()
corrplot(corr=df.rcorr$r,
p.mat = df.rcorr$P,
type='lower', insig='pch', sig.level =.1, pch.cex = .9, diag=F,
tl.cex=.7, tl.col='black', tl.offset=.5, cl.pos='r', win.asp=1)

if (SAVE.RESULTS) {
pdf(file=paste(output.fig.dir, '/corr_matrix.pdf', sep=''))
corrplot(corr=df.rcorr$r,
p.mat = df.rcorr$P,
type='lower', insig='pch', sig.level =.1, pch.cex = .9, diag=F,
tl.cex=.7, tl.col='black', tl.offset=.5, cl.pos='r', win.asp=1)
dev.off()
}
## quartz_off_screen
## 2
dist_plots <- lapply(names(df %>% select(-iso, -country_name)), function(var_x){
p <-
ggplot(df) +
aes_string(var_x) +
theme_light() +
theme(
axis.text = element_blank(),
axis.title.y = element_blank(),
axis.title.x = element_text(family='Helvetica', size=9),
axis.ticks = element_blank()
)
if(is.numeric(df[[var_x]])) {
p <- p + geom_density()
}
})
cowplot::plot_grid(plotlist = dist_plots)
## Warning: Removed 2 rows containing non-finite values (stat_density).
## Warning: Removed 2 rows containing non-finite values (stat_density).
## Warning: Removed 2 rows containing non-finite values (stat_density).
## Warning: Removed 3 rows containing non-finite values (stat_density).
## Warning: Removed 3 rows containing non-finite values (stat_density).
## Warning: Removed 4 rows containing non-finite values (stat_density).
## Warning: Removed 2 rows containing non-finite values (stat_density).
## Warning: Removed 20 rows containing non-finite values (stat_density).
## Warning: Removed 3 rows containing non-finite values (stat_density).
## Warning: Removed 24 rows containing non-finite values (stat_density).
## Warning: Removed 24 rows containing non-finite values (stat_density).
## Warning: Removed 6 rows containing non-finite values (stat_density).
## Warning: Removed 16 rows containing non-finite values (stat_density).
## Warning: Removed 11 rows containing non-finite values (stat_density).

if (SAVE.RESULTS) {
ggsave(filename = paste(output.fig.dir, '/distributions.png', sep = ''))
}
## Saving 7 x 5 in image
lapply(names(df %>% select(-iso, -country_name, -state_legit)),
function(var_x){
plt <- ggplot(df, aes_string(x=var_x, y='state_legit')) +
geom_point(colour='orange') +
stat_smooth(method='lm', formula='y~x', fullrange=T, color='purple') +
ggrepel::geom_text_repel(label=df$iso) +
theme_classic() +
labs(title=paste(col_names[var_x], 'vs.', 'State Legitimacy'))
print(plt)
if (SAVE.RESULTS) {
ggsave(paste(output.fig.dir, '/state_legit_X_', var_x, '.png', sep=''))
}
}
)
## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).

## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).

## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).

## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).
## Warning: ggrepel: 7 unlabeled data points (too many overlaps). Consider
## increasing max.overlaps
## Saving 7 x 5 in image
## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).
## Warning: ggrepel: 7 unlabeled data points (too many overlaps). Consider
## increasing max.overlaps

## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).

## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).

## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).

## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).

## Warning: Removed 22 rows containing non-finite values (stat_smooth).
## Warning: Removed 22 rows containing missing values (geom_point).
## Warning: Removed 22 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 22 rows containing non-finite values (stat_smooth).
## Warning: Removed 22 rows containing missing values (geom_point).
## Warning: Removed 22 rows containing missing values (geom_text_repel).

## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).
## Warning: ggrepel: 1 unlabeled data points (too many overlaps). Consider
## increasing max.overlaps
## Saving 7 x 5 in image
## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).
## Warning: ggrepel: 1 unlabeled data points (too many overlaps). Consider
## increasing max.overlaps

## Warning: Removed 31 rows containing non-finite values (stat_smooth).
## Warning: Removed 31 rows containing missing values (geom_point).
## Warning: Removed 31 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 31 rows containing non-finite values (stat_smooth).
## Warning: Removed 31 rows containing missing values (geom_point).
## Warning: Removed 31 rows containing missing values (geom_text_repel).

## Warning: Removed 31 rows containing non-finite values (stat_smooth).
## Warning: Removed 31 rows containing missing values (geom_point).
## Warning: Removed 31 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 31 rows containing non-finite values (stat_smooth).
## Warning: Removed 31 rows containing missing values (geom_point).
## Warning: Removed 31 rows containing missing values (geom_text_repel).

## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).

## Warning: Removed 20 rows containing non-finite values (stat_smooth).
## Warning: Removed 20 rows containing missing values (geom_point).
## Warning: Removed 20 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 20 rows containing non-finite values (stat_smooth).
## Warning: Removed 20 rows containing missing values (geom_point).
## Warning: Removed 20 rows containing missing values (geom_text_repel).

## [[1]]
## [1] "../../output/figures/state_legit_X_corruption_control.png"
##
## [[2]]
## [1] "../../output/figures/state_legit_X_gov_effectiveness.png"
##
## [[3]]
## [1] "../../output/figures/state_legit_X_rule_of_law.png"
##
## [[4]]
## [1] "../../output/figures/state_legit_X_conflict_displacement.png"
##
## [[5]]
## [1] "../../output/figures/state_legit_X_disaster_displacement.png"
##
## [[6]]
## [1] "../../output/figures/state_legit_X_air_quality.png"
##
## [[7]]
## [1] "../../output/figures/state_legit_X_climate_change.png"
##
## [[8]]
## [1] "../../output/figures/state_legit_X_migrant_stock.png"
##
## [[9]]
## [1] "../../output/figures/state_legit_X_refugee_stock.png"
##
## [[10]]
## [1] "../../output/figures/state_legit_X_gdp.png"
##
## [[11]]
## [1] "../../output/figures/state_legit_X_cpa_d_12.png"
##
## [[12]]
## [1] "../../output/figures/state_legit_X_cpa_d_avg.png"
##
## [[13]]
## [1] "../../output/figures/state_legit_X_hdi_value.png"
##
## [[14]]
## [1] "../../output/figures/state_legit_X_gini.png"
df.noafg <- df %>% filter(iso != 'AFG')
lapply(names(df.noafg %>% select(-iso, -country_name, -state_legit)),
function(var_x){
plt <- ggplot(df.noafg %>% filter(iso != 'AFG'), aes_string(x=var_x, y='state_legit')) +
geom_point(colour='orange') +
stat_smooth(method='lm', formula='y~x', fullrange=T, color='purple') +
ggrepel::geom_text_repel(label=df.noafg$iso) +
theme_classic() +
labs(title=paste(col_names[var_x], 'vs.', 'State Legitimacy'))
print(plt)
if (SAVE.RESULTS) {
ggsave(paste(output.fig.dir, '/state_legit_X_', var_x, '_NOAFG', '.png', sep=''))
}
}
)
## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).

## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).

## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).

## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).

## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 12 rows containing non-finite values (stat_smooth).
## Warning: Removed 12 rows containing missing values (geom_point).
## Warning: Removed 12 rows containing missing values (geom_text_repel).

## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).

## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).

## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).

## Warning: Removed 22 rows containing non-finite values (stat_smooth).
## Warning: Removed 22 rows containing missing values (geom_point).
## Warning: Removed 22 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 22 rows containing non-finite values (stat_smooth).
## Warning: Removed 22 rows containing missing values (geom_point).
## Warning: Removed 22 rows containing missing values (geom_text_repel).

## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).

## Warning: Removed 31 rows containing non-finite values (stat_smooth).
## Warning: Removed 31 rows containing missing values (geom_point).
## Warning: Removed 31 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 31 rows containing non-finite values (stat_smooth).
## Warning: Removed 31 rows containing missing values (geom_point).
## Warning: Removed 31 rows containing missing values (geom_text_repel).

## Warning: Removed 31 rows containing non-finite values (stat_smooth).
## Warning: Removed 31 rows containing missing values (geom_point).
## Warning: Removed 31 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 31 rows containing non-finite values (stat_smooth).
## Warning: Removed 31 rows containing missing values (geom_point).
## Warning: Removed 31 rows containing missing values (geom_text_repel).

## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).
## Warning: Removed 11 rows containing missing values (geom_text_repel).

## Warning: Removed 19 rows containing non-finite values (stat_smooth).
## Warning: Removed 19 rows containing missing values (geom_point).
## Warning: Removed 19 rows containing missing values (geom_text_repel).
## Saving 7 x 5 in image
## Warning: Removed 19 rows containing non-finite values (stat_smooth).
## Warning: Removed 19 rows containing missing values (geom_point).
## Warning: Removed 19 rows containing missing values (geom_text_repel).

## [[1]]
## [1] "../../output/figures/state_legit_X_corruption_control_NOAFG.png"
##
## [[2]]
## [1] "../../output/figures/state_legit_X_gov_effectiveness_NOAFG.png"
##
## [[3]]
## [1] "../../output/figures/state_legit_X_rule_of_law_NOAFG.png"
##
## [[4]]
## [1] "../../output/figures/state_legit_X_conflict_displacement_NOAFG.png"
##
## [[5]]
## [1] "../../output/figures/state_legit_X_disaster_displacement_NOAFG.png"
##
## [[6]]
## [1] "../../output/figures/state_legit_X_air_quality_NOAFG.png"
##
## [[7]]
## [1] "../../output/figures/state_legit_X_climate_change_NOAFG.png"
##
## [[8]]
## [1] "../../output/figures/state_legit_X_migrant_stock_NOAFG.png"
##
## [[9]]
## [1] "../../output/figures/state_legit_X_refugee_stock_NOAFG.png"
##
## [[10]]
## [1] "../../output/figures/state_legit_X_gdp_NOAFG.png"
##
## [[11]]
## [1] "../../output/figures/state_legit_X_cpa_d_12_NOAFG.png"
##
## [[12]]
## [1] "../../output/figures/state_legit_X_cpa_d_avg_NOAFG.png"
##
## [[13]]
## [1] "../../output/figures/state_legit_X_hdi_value_NOAFG.png"
##
## [[14]]
## [1] "../../output/figures/state_legit_X_gini_NOAFG.png"
climate.model <- lm(state_legit ~ climate_change + air_quality + hdi_value + gdp, df)
governance.model <- lm(state_legit ~ rule_of_law + gov_effectiveness + corruption_control + gdp, df)
migration.model <- lm(state_legit ~ migrant_stock + refugee_stock + conflict_displacement + disaster_displacement + gdp, df)
full.model <- lm(state_legit ~ rule_of_law + gov_effectiveness + corruption_control + migrant_stock + refugee_stock + conflict_displacement + disaster_displacement + climate_change + air_quality + hdi_value + gdp, df)
stargazer(climate.model, migration.model, governance.model, full.model, type='text')
##
## =================================================================================================================
## Dependent variable:
## -------------------------------------------------------------------------------------------
## state_legit
## (1) (2) (3) (4)
## -----------------------------------------------------------------------------------------------------------------
## climate_change 0.002 -0.0001
## (0.031) (0.029)
##
## air_quality 0.046 -0.027
## (0.036) (0.033)
##
## hdi_value -3.859 -5.832
## (5.226) (5.587)
##
## migrant_stock -0.004 -0.004
## (0.002) (0.002)
##
## refugee_stock -0.024* -0.031**
## (0.014) (0.011)
##
## conflict_displacement -0.024*** -0.016**
## (0.008) (0.007)
##
## disaster_displacement 0.071*** 0.055**
## (0.022) (0.020)
##
## rule_of_law 2.227** 4.645***
## (1.035) (1.552)
##
## gov_effectiveness -1.861** -1.806
## (0.738) (1.081)
##
## corruption_control 1.201* -0.764
## (0.653) (1.058)
##
## gdp 0.065 0.190*** 0.043 0.144**
## (0.053) (0.031) (0.030) (0.058)
##
## Constant 4.048 2.234*** 3.844*** 8.739*
## (3.139) (0.415) (0.388) (4.256)
##
## -----------------------------------------------------------------------------------------------------------------
## Observations 38 27 37 27
## R2 0.431 0.748 0.719 0.897
## Adjusted R2 0.362 0.688 0.684 0.822
## Residual Std. Error 2.031 (df = 33) 1.533 (df = 21) 1.427 (df = 32) 1.157 (df = 15)
## F Statistic 6.238*** (df = 4; 33) 12.460*** (df = 5; 21) 20.490*** (df = 4; 32) 11.930*** (df = 11; 15)
## =================================================================================================================
## Note: *p<0.1; **p<0.05; ***p<0.01
if (SAVE.RESULTS) {
stargazer(climate.model, migration.model, governance.model, full.model, type='html', out=paste(output.tab.dir, '/state_legit_reg.html', sep=''))
}
##
## <table style="text-align:center"><tr><td colspan="5" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left"></td><td colspan="4"><em>Dependent variable:</em></td></tr>
## <tr><td></td><td colspan="4" style="border-bottom: 1px solid black"></td></tr>
## <tr><td style="text-align:left"></td><td colspan="4">state_legit</td></tr>
## <tr><td style="text-align:left"></td><td>(1)</td><td>(2)</td><td>(3)</td><td>(4)</td></tr>
## <tr><td colspan="5" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left">climate_change</td><td>0.002</td><td></td><td></td><td>-0.0001</td></tr>
## <tr><td style="text-align:left"></td><td>(0.031)</td><td></td><td></td><td>(0.029)</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">air_quality</td><td>0.046</td><td></td><td></td><td>-0.027</td></tr>
## <tr><td style="text-align:left"></td><td>(0.036)</td><td></td><td></td><td>(0.033)</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">hdi_value</td><td>-3.859</td><td></td><td></td><td>-5.832</td></tr>
## <tr><td style="text-align:left"></td><td>(5.226)</td><td></td><td></td><td>(5.587)</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">migrant_stock</td><td></td><td>-0.004</td><td></td><td>-0.004</td></tr>
## <tr><td style="text-align:left"></td><td></td><td>(0.002)</td><td></td><td>(0.002)</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">refugee_stock</td><td></td><td>-0.024<sup>*</sup></td><td></td><td>-0.031<sup>**</sup></td></tr>
## <tr><td style="text-align:left"></td><td></td><td>(0.014)</td><td></td><td>(0.011)</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">conflict_displacement</td><td></td><td>-0.024<sup>***</sup></td><td></td><td>-0.016<sup>**</sup></td></tr>
## <tr><td style="text-align:left"></td><td></td><td>(0.008)</td><td></td><td>(0.007)</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">disaster_displacement</td><td></td><td>0.071<sup>***</sup></td><td></td><td>0.055<sup>**</sup></td></tr>
## <tr><td style="text-align:left"></td><td></td><td>(0.022)</td><td></td><td>(0.020)</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">rule_of_law</td><td></td><td></td><td>2.227<sup>**</sup></td><td>4.645<sup>***</sup></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td>(1.035)</td><td>(1.552)</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">gov_effectiveness</td><td></td><td></td><td>-1.861<sup>**</sup></td><td>-1.806</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td>(0.738)</td><td>(1.081)</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">corruption_control</td><td></td><td></td><td>1.201<sup>*</sup></td><td>-0.764</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td>(0.653)</td><td>(1.058)</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">gdp</td><td>0.065</td><td>0.190<sup>***</sup></td><td>0.043</td><td>0.144<sup>**</sup></td></tr>
## <tr><td style="text-align:left"></td><td>(0.053)</td><td>(0.031)</td><td>(0.030)</td><td>(0.058)</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">Constant</td><td>4.048</td><td>2.234<sup>***</sup></td><td>3.844<sup>***</sup></td><td>8.739<sup>*</sup></td></tr>
## <tr><td style="text-align:left"></td><td>(3.139)</td><td>(0.415)</td><td>(0.388)</td><td>(4.256)</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td colspan="5" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left">Observations</td><td>38</td><td>27</td><td>37</td><td>27</td></tr>
## <tr><td style="text-align:left">R<sup>2</sup></td><td>0.431</td><td>0.748</td><td>0.719</td><td>0.897</td></tr>
## <tr><td style="text-align:left">Adjusted R<sup>2</sup></td><td>0.362</td><td>0.688</td><td>0.684</td><td>0.822</td></tr>
## <tr><td style="text-align:left">Residual Std. Error</td><td>2.031 (df = 33)</td><td>1.533 (df = 21)</td><td>1.427 (df = 32)</td><td>1.157 (df = 15)</td></tr>
## <tr><td style="text-align:left">F Statistic</td><td>6.238<sup>***</sup> (df = 4; 33)</td><td>12.460<sup>***</sup> (df = 5; 21)</td><td>20.490<sup>***</sup> (df = 4; 32)</td><td>11.930<sup>***</sup> (df = 11; 15)</td></tr>
## <tr><td colspan="5" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left"><em>Note:</em></td><td colspan="4" style="text-align:right"><sup>*</sup>p<0.1; <sup>**</sup>p<0.05; <sup>***</sup>p<0.01</td></tr>
## </table>
climate.model <- lm(cpa_d_avg ~ climate_change + air_quality + hdi_value + gdp , df)
governance.model <- lm(cpa_d_avg ~ rule_of_law + gov_effectiveness + corruption_control + gdp , df)
migration.model <- lm(cpa_d_avg ~ migrant_stock + refugee_stock + conflict_displacement + disaster_displacement + gdp , df)
full.model <- lm(cpa_d_avg ~ rule_of_law + gov_effectiveness + corruption_control + migrant_stock + refugee_stock + conflict_displacement + disaster_displacement + climate_change + air_quality + hdi_value + gdp , df)
stargazer(climate.model, migration.model, governance.model, full.model, type='text')
##
## ======================================================================================
## Dependent variable:
## ----------------------------------------------------------------
## cpa_d_avg
## (1) (2) (3) (4)
## --------------------------------------------------------------------------------------
## climate_change -0.009 0.005
## (0.008)
##
## air_quality -0.021 -0.017
## (0.015)
##
## hdi_value 4.793*
## (2.309)
##
## migrant_stock 0.004 0.004
## (0.005)
##
## refugee_stock -0.001 -0.023
## (0.016)
##
## conflict_displacement 0.001 -0.005
## (0.007)
##
## disaster_displacement -0.012 0.022
## (0.023)
##
## rule_of_law -0.069 3.201
## (0.259)
##
## gov_effectiveness 0.817*** -0.203
## (0.269)
##
## corruption_control -0.075 -2.868
## (0.229)
##
## gdp 0.006 -0.043 -0.078*
## (0.127) (0.165) (0.040)
##
## Constant 1.274 3.611*** 4.007*** 3.547
## (1.404) (0.409) (0.224)
##
## --------------------------------------------------------------------------------------
## Observations 22 10 25 10
## R2 0.353 0.463 0.355 1.000
## Adjusted R2 0.201 -0.208 0.226
## Residual Std. Error 0.486 (df = 17) 0.492 (df = 4) 0.469 (df = 20)
## F Statistic 2.319* (df = 4; 17) 0.690 (df = 5; 4) 2.749* (df = 4; 20)
## ======================================================================================
## Note: *p<0.1; **p<0.05; ***p<0.01
if (SAVE.RESULTS) {
stargazer(climate.model, migration.model, governance.model, full.model, type='html', out=paste(output.tab.dir, '/cpa_d_avg_reg.html', sep=''))
}
##
## <table style="text-align:center"><tr><td colspan="5" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left"></td><td colspan="4"><em>Dependent variable:</em></td></tr>
## <tr><td></td><td colspan="4" style="border-bottom: 1px solid black"></td></tr>
## <tr><td style="text-align:left"></td><td colspan="4">cpa_d_avg</td></tr>
## <tr><td style="text-align:left"></td><td>(1)</td><td>(2)</td><td>(3)</td><td>(4)</td></tr>
## <tr><td colspan="5" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left">climate_change</td><td>-0.009</td><td></td><td></td><td>0.005</td></tr>
## <tr><td style="text-align:left"></td><td>(0.008)</td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">air_quality</td><td>-0.021</td><td></td><td></td><td>-0.017</td></tr>
## <tr><td style="text-align:left"></td><td>(0.015)</td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">hdi_value</td><td>4.793<sup>*</sup></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left"></td><td>(2.309)</td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">migrant_stock</td><td></td><td>0.004</td><td></td><td>0.004</td></tr>
## <tr><td style="text-align:left"></td><td></td><td>(0.005)</td><td></td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">refugee_stock</td><td></td><td>-0.001</td><td></td><td>-0.023</td></tr>
## <tr><td style="text-align:left"></td><td></td><td>(0.016)</td><td></td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">conflict_displacement</td><td></td><td>0.001</td><td></td><td>-0.005</td></tr>
## <tr><td style="text-align:left"></td><td></td><td>(0.007)</td><td></td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">disaster_displacement</td><td></td><td>-0.012</td><td></td><td>0.022</td></tr>
## <tr><td style="text-align:left"></td><td></td><td>(0.023)</td><td></td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">rule_of_law</td><td></td><td></td><td>-0.069</td><td>3.201</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td>(0.259)</td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">gov_effectiveness</td><td></td><td></td><td>0.817<sup>***</sup></td><td>-0.203</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td>(0.269)</td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">corruption_control</td><td></td><td></td><td>-0.075</td><td>-2.868</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td>(0.229)</td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">gdp</td><td>0.006</td><td>-0.043</td><td>-0.078<sup>*</sup></td><td></td></tr>
## <tr><td style="text-align:left"></td><td>(0.127)</td><td>(0.165)</td><td>(0.040)</td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">Constant</td><td>1.274</td><td>3.611<sup>***</sup></td><td>4.007<sup>***</sup></td><td>3.547</td></tr>
## <tr><td style="text-align:left"></td><td>(1.404)</td><td>(0.409)</td><td>(0.224)</td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td colspan="5" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left">Observations</td><td>22</td><td>10</td><td>25</td><td>10</td></tr>
## <tr><td style="text-align:left">R<sup>2</sup></td><td>0.353</td><td>0.463</td><td>0.355</td><td>1.000</td></tr>
## <tr><td style="text-align:left">Adjusted R<sup>2</sup></td><td>0.201</td><td>-0.208</td><td>0.226</td><td></td></tr>
## <tr><td style="text-align:left">Residual Std. Error</td><td>0.486 (df = 17)</td><td>0.492 (df = 4)</td><td>0.469 (df = 20)</td><td></td></tr>
## <tr><td style="text-align:left">F Statistic</td><td>2.319<sup>*</sup> (df = 4; 17)</td><td>0.690 (df = 5; 4)</td><td>2.749<sup>*</sup> (df = 4; 20)</td><td></td></tr>
## <tr><td colspan="5" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left"><em>Note:</em></td><td colspan="4" style="text-align:right"><sup>*</sup>p<0.1; <sup>**</sup>p<0.05; <sup>***</sup>p<0.01</td></tr>
## </table>
climate.model <- lm(cpa_d_12 ~ climate_change + air_quality + hdi_value + gdp, df)
governance.model <- lm(cpa_d_12 ~ rule_of_law + gov_effectiveness + corruption_control + gdp, df)
migration.model <- lm(cpa_d_12 ~ migrant_stock + refugee_stock + conflict_displacement + disaster_displacement + gdp, df)
full.model <- lm(cpa_d_12 ~ rule_of_law + gov_effectiveness + corruption_control + migrant_stock + refugee_stock + conflict_displacement + disaster_displacement + climate_change + air_quality + hdi_value + gdp, df)
stargazer(climate.model, migration.model, governance.model, full.model, type='text')
##
## =========================================================================================
## Dependent variable:
## -------------------------------------------------------------------
## cpa_d_12
## (1) (2) (3) (4)
## -----------------------------------------------------------------------------------------
## climate_change -0.003 0.019
## (0.010)
##
## air_quality -0.027 -0.053
## (0.018)
##
## hdi_value 7.115**
## (2.779)
##
## migrant_stock 0.007 0.002
## (0.007)
##
## refugee_stock -0.001 -0.011
## (0.024)
##
## conflict_displacement 0.003 0.002
## (0.011)
##
## disaster_displacement -0.025 -0.00002
## (0.035)
##
## rule_of_law 0.618* 3.980
## (0.355)
##
## gov_effectiveness 0.366 0.538
## (0.368)
##
## corruption_control -0.212 -3.455
## (0.314)
##
## gdp 0.095 0.047 -0.019
## (0.153) (0.248) (0.054)
##
## Constant -0.553 3.109*** 3.824*** 4.239
## (1.690) (0.615) (0.307)
##
## -----------------------------------------------------------------------------------------
## Observations 22 10 25 10
## R2 0.500 0.668 0.355 1.000
## Adjusted R2 0.382 0.252 0.226
## Residual Std. Error 0.585 (df = 17) 0.741 (df = 4) 0.643 (df = 20)
## F Statistic 4.244** (df = 4; 17) 1.607 (df = 5; 4) 2.755* (df = 4; 20)
## =========================================================================================
## Note: *p<0.1; **p<0.05; ***p<0.01
if (SAVE.RESULTS) {
stargazer(climate.model, migration.model, governance.model, full.model, type='html', out=paste(output.tab.dir, '/cpa_d_12_reg.html', sep=''))
}
##
## <table style="text-align:center"><tr><td colspan="5" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left"></td><td colspan="4"><em>Dependent variable:</em></td></tr>
## <tr><td></td><td colspan="4" style="border-bottom: 1px solid black"></td></tr>
## <tr><td style="text-align:left"></td><td colspan="4">cpa_d_12</td></tr>
## <tr><td style="text-align:left"></td><td>(1)</td><td>(2)</td><td>(3)</td><td>(4)</td></tr>
## <tr><td colspan="5" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left">climate_change</td><td>-0.003</td><td></td><td></td><td>0.019</td></tr>
## <tr><td style="text-align:left"></td><td>(0.010)</td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">air_quality</td><td>-0.027</td><td></td><td></td><td>-0.053</td></tr>
## <tr><td style="text-align:left"></td><td>(0.018)</td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">hdi_value</td><td>7.115<sup>**</sup></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left"></td><td>(2.779)</td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">migrant_stock</td><td></td><td>0.007</td><td></td><td>0.002</td></tr>
## <tr><td style="text-align:left"></td><td></td><td>(0.007)</td><td></td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">refugee_stock</td><td></td><td>-0.001</td><td></td><td>-0.011</td></tr>
## <tr><td style="text-align:left"></td><td></td><td>(0.024)</td><td></td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">conflict_displacement</td><td></td><td>0.003</td><td></td><td>0.002</td></tr>
## <tr><td style="text-align:left"></td><td></td><td>(0.011)</td><td></td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">disaster_displacement</td><td></td><td>-0.025</td><td></td><td>-0.00002</td></tr>
## <tr><td style="text-align:left"></td><td></td><td>(0.035)</td><td></td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">rule_of_law</td><td></td><td></td><td>0.618<sup>*</sup></td><td>3.980</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td>(0.355)</td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">gov_effectiveness</td><td></td><td></td><td>0.366</td><td>0.538</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td>(0.368)</td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">corruption_control</td><td></td><td></td><td>-0.212</td><td>-3.455</td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td>(0.314)</td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">gdp</td><td>0.095</td><td>0.047</td><td>-0.019</td><td></td></tr>
## <tr><td style="text-align:left"></td><td>(0.153)</td><td>(0.248)</td><td>(0.054)</td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td style="text-align:left">Constant</td><td>-0.553</td><td>3.109<sup>***</sup></td><td>3.824<sup>***</sup></td><td>4.239</td></tr>
## <tr><td style="text-align:left"></td><td>(1.690)</td><td>(0.615)</td><td>(0.307)</td><td></td></tr>
## <tr><td style="text-align:left"></td><td></td><td></td><td></td><td></td></tr>
## <tr><td colspan="5" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left">Observations</td><td>22</td><td>10</td><td>25</td><td>10</td></tr>
## <tr><td style="text-align:left">R<sup>2</sup></td><td>0.500</td><td>0.668</td><td>0.355</td><td>1.000</td></tr>
## <tr><td style="text-align:left">Adjusted R<sup>2</sup></td><td>0.382</td><td>0.252</td><td>0.226</td><td></td></tr>
## <tr><td style="text-align:left">Residual Std. Error</td><td>0.585 (df = 17)</td><td>0.741 (df = 4)</td><td>0.643 (df = 20)</td><td></td></tr>
## <tr><td style="text-align:left">F Statistic</td><td>4.244<sup>**</sup> (df = 4; 17)</td><td>1.607 (df = 5; 4)</td><td>2.755<sup>*</sup> (df = 4; 20)</td><td></td></tr>
## <tr><td colspan="5" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left"><em>Note:</em></td><td colspan="4" style="text-align:right"><sup>*</sup>p<0.1; <sup>**</sup>p<0.05; <sup>***</sup>p<0.01</td></tr>
## </table>